In multilinear algebra, there does not exist a general decomposition method for multi-way arrays (also known as N-arrays, higher-order arrays, or data-tensors) with all the properties of a matrix singular value decomposition (SVD). A matrix SVD simultaneously computes
These two properties can be captured separately by two different decompositions for multi-way arrays.
Property (a) is extended to higher order by a class of closely related constructions known collectively as CP decomposition (named after the two most popular and general variants, CANDECOMP and PARAFAC). Such decompositions represent a tensor as the sum of the n-fold outter products of rank-1 tensors, where n is the dimension of the tensor indices.
Property (b) is extended to higher order by a class of methods known variably as Tucker3, N-mode SVD, and N-mode principal component analysis (PCA). (This article will use the general term "Tucker decomposition".) These methods compute the othonormal spaces associated with the different axes (or modes) of a tensor. The Tucker decomposition is also used in multilinear subspace learning as multilinear principal component analysis. This terminology was coined by P. Kroonenberg in the 1980s, but it was later called multilinear SVD and HOSVD (higher-order SVD) by L. De Lathauwer.
Historically, much of the interest in higher-order SVDs was driven by the need to analyze empirical data, especial in psychometrics and chemometrics. As such, many of the methods have been independently invented several times, often with subtle variations, leading to a confusing literature. Abstract and general mathematical theorems are rare (though see Kruskal[1] with regard to the CP decomposition); instead, the methods are often designed for analyzing specific data types. The 2008 review article by Kolda and Bader[2] provides a compact summary of the history of these decompositions, and many references for further reading.
Contents |
A CP decomposition of an N-way array X, with elements , is
where denotes the tensor product. The r tensors (known as simple tensors, rank-1 tensors, dyads, or, in quantum mechanics, product states) are constructed from the rN vectors . With indices, this is
where is the i-th element of the vector , etc.
In 1966, L. Tucker proposed a decomposition method for 3-way arrays (inappropriately referred to as a 3-mode "tensors") as a multidimensional extension of factor analysis.[3] This decomposition was further developed in the 1980s by P. Kroonenberg, who coined the terms Tucker3, Tucker3ALS (an alternating least squares dimensionality reduction algorithm), 3-Mode SVD, and 3-Mode PCA.[4] In the intervening years, several authors developed the decomposition for N-way arrays. Most recently, this work was treated in an elegant fashion and introduced to the SIAM community by L. De Lathauwer et al. who referred to the decomposition as an N-way SVD, multilinear SVD and HOSVD.[5]
Let the SVD of a real matrix be , then it can be written in an elementwise form as
and give, in a certain sense optimal, orthonormal basis for the column and row space, is diagonal with decreasing elements. N-mode SVD can be defined by the multidimensional generalization of this concept:
where the matrices and the core tensor should satisfy certain requirements (similar ones to the matrix SVD), namely
Notation:
Tensor SVD can be built on SVD as follows:[6]
Given a tensor, T of shape , the ith singular tensor is given by making a matrix,
taking its left singular vectors, .
The core tensor is then the tensor product of those s.
Main applications are extracting relevant information from multi-way arrays. Used in factor analysis, face recognition (TensorFaces), human motion analysis and synthesis, and many other signal processing endeavours, such as Genomic Signal Processing.[7][8][9]
It is also used in tensor product model transformation-based controller design. In multilinear subspace learning[10], it is modified to multilinear principal component analysis[11] for gait recognition.